"use strict";
// 泛型可解决 类  接口 方法 的复用性，以及对不特定数据类型的支持
// 可以支持不特定的数据类型  要求：传入的参数和返回的参数一致
// T 表示泛型
// function getValue<T>(value:T):T{
//   return value
// }
// getValue<number>(12)
// 泛型类
var MinClass = /** @class */ (function () {
    function MinClass() {
        this.list = [];
    }
    MinClass.prototype.add = function (arr) {
        var _this = this;
        arr.forEach(function (v) { return _this.list.push(v); });
    };
    MinClass.prototype.min = function () {
        var minNUm = this.list[0];
        for (var index = 0; index < this.list.length; index++) {
            if (minNUm > this.list[index]) {
                minNUm = this.list[index];
            }
        }
        return minNUm;
    };
    // sort(): number[] {
    //   let newArr: number[] = JSON.parse(JSON.stringify(this.list));
    //   newArr.sort((a, b) => {
    //     return a - b;
    //   });
    //   return newArr;
    // }
    // sort(): number[] {
    //   let newArr: number[] = JSON.parse(JSON.stringify(this.list));
    //   let temp:number=0
    //   for (let i = 0; i < newArr.length-1; i++) {
    //     for (let j = 0; j < newArr.length-1; j++) {
    //        if(newArr[j]>newArr[j+1]){
    //          temp = newArr[j]
    //          newArr[j] = newArr[j+1]
    //          newArr[j+1] = temp
    //        }
    //     }
    //   }
    //   return newArr;
    // }
    MinClass.prototype.sort = function () {
        var newArr = JSON.parse(JSON.stringify(this.list));
        var temp = 0;
        for (var i = 0; i < newArr.length - 1; i++) {
            for (var j = i + 1; j < newArr.length; j++) {
                if (newArr[i] > newArr[j]) {
                    temp = newArr[i];
                    newArr[i] = newArr[j];
                    newArr[j] = temp;
                }
            }
        }
        return newArr;
    };
    return MinClass;
}());
var m = new MinClass();
var arr = [12, 42, 53, 64, 16, 8, 2, 5];
m.add(arr);
console.log(m.min());
console.log(m.sort());
